草庐IT

C++11 快速 constexpr 整数幂

全部标签

c# - 在 WPF 中获取用户输入的简单、快速的方法?

我最近开始在我的一个项目中使用C#和WPF。有没有一种快速获取用户输入的方法?我一直无法为WPF项目找到一个。我不想创建另一个窗口、添加“确定”和“取消”按钮以及为所有内容添加事件处理程序。我可以做到,但我想知道一种更简单的方法。据我所知,这在win形式中是可能的。只需一行代码即可获得用户输入。我也可以在WPF中完成吗? 最佳答案 如果将Microsoft.VisualBasicdll添加到应用程序,则可以使用InputBox方法从用户那里获取单个值。Microsoft.VisualBasic.Interaction.InputBo

c# - 将列表<int> 转换为连接的整数字符串?

我有一个值为3,99,6的int数组。如何使用linq将数组转换为字符串3,99,6? 最佳答案 int[]list=new[]{3,99,6};strings=string.Join(",",list.Select(x=>x.ToString()).ToArray());编辑,C#4.0在C#4.0中,还有一个重载string.Join,最终允许传递一个IEnumerable或IEnumerable直接地。无需创建数组,也无需调用ToString(),它被隐式调用:strings=string.Join(",",list);对字符

c# - 使用预计算平移数组的快速正弦/余弦

我有以下代码使用预先计算的内存表执行Sin/Cos函数。在下面的例子中,表格有1024*128个项目,涵盖了从0到2pi的所有Sin/Cos值。我知道我可以使用Sin/Cos对称性并仅保留1/4的值,但在计算值时我会有更多的“如果”。privateconstdoublePI2=Math.PI*2.0;privateconstintTABLE_SIZE=1024*128;privateconstdoubleTABLE_SIZE_D=(double)TABLE_SIZE;privateconstdoubleFACTOR=TABLE_SIZE_D/PI2;privatestaticdoubl

c# - 长整数可以在 32 位系统上工作吗?

如果我理解正确的话,一个int变量正在保存32位,将它限制在-20亿到20亿之间。但是,如果我使用长变量,它将保存为64位,从而可以存储更多数字。我使用的是64位系统,但如果我以64位存储数据,我的代码能否在32位系统上正常运行?谢谢! 最佳答案 你不用担心这个。long值将存储在2个内存地址中。Int64/long将始终为64位,而Int32/int将始终为32位。有一些影响(关于内存空间和性能),但最值得注意的可能是写/读操作在32位系统上不是原子的,但你不应该期望它们无论如何都是原子的,因为c#规范不提供此类保证。无论哪种方式

C# 不可变整数

在Java中,字符串是不可变的。如果我们有一个字符串并对其进行更改,我们将获得由同一变量引用的新字符串:Stringstr="abc";str+="def";//nowstrreferstoanotherpieceintheheapcontaining"abcdef"//while"abc"isstillsomewhereintheheapuntiltakenbyGCIt'sbeensaidint和double在C#中是不可变的。这是否意味着当我们拥有int并稍后更改它时,我们会得到同一个变量“指向”的新int?同样的事情,但有堆栈。inti=1;i+=1;//samething:in

c# - 可以快速调整大小的数组

我正在寻找一种数组数据类型,它可以轻松添加项目,而不会影响性能。System.Array-RedimPreserve将整个RAM从旧的复制到新的,速度与现有元素的数量一样慢System.Collections.ArrayList-够好吗?System.Collections.IList-够好吗? 最佳答案 简单总结几个数据结构:System.Collections.ArrayList:无类型数据结构已过时。请改用List(oft)。System.Collections.Generic.List(oft):这表示一个可调整大小的数组。

c# - 十进制/双整数 - 向上舍入(不仅仅是最接近的)

您如何四舍五入小数或float到整数。例如……0.0=>00.1=>11.1=>21.7=>22.1=>3等等 最佳答案 简单,使用Math.Ceiling:varwholeNumber=(int)Math.Ceiling(fractionalNumber); 关于c#-十进制/双整数-向上舍入(不仅仅是最接近的),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8666069/

c# - 如何以编程方式禁用 C# 控制台应用程序快速编辑模式?

我已经尝试了几种解决方案,例如->http://www.pcreview.co.uk/forums/console-writeline-hangs-if-user-click-into-console-window-t1412701.html但是,我观察到GetConsoleMode(IntPtrhConsoleHandle,outintmode)中的模式对于不同的控制台应用程序是不同的。它不是恒定的。我可以在控制台应用程序上禁用鼠标单击(右/左按钮)来实现相同的场景吗?我发现它可以用IMessageFilter完成,但仅适用于窗口窗体应用程序,不适用于控制台应用程序。

C#:将年份列表构建为整数

我想创建一个C#List整数,从1930年到2010年。在我的脑海中,我能想到的唯一方法是使用for或while循环遍历数字之间的每个整数,并将它们分别添加到List中。我知道C#列表有很多有趣的方法,尤其是当您使用Linq时。谁能想出更有效的方法来做到这一点? 最佳答案 Enumerable.Range(1930,81)(MSDNdocs)将为您提供包含所需内容的枚举。第一个参数是起始值,第二个是项目数。您需要81而不是80,因为您需要1930年到2010年(含)。如果您明确希望它作为List,请使用Enumerable.Rang

c# - PDF 下载失败显示消息 "Couldn' t be downloaded“仅在 IE11 中

我将ASP.NET与Web表单一起使用,一些应该非常简单的事情让我发疯,已经提出了类似的问题,但没有一个对我有帮助,IE拒绝下载我的文件。注意事项:我在本地测试它适用于Firefox和Chrome,但不适用于IE11IE将文件名更改为页面名称(例如,它尝试保存default_aspx而不是myfile.pdf)这是我的代码:Response.ClearHeaders();Response.ClearContent();Response.ContentType="Application/pdf";Response.AddHeader("Content-Disposition","atta